too many open files 问题解决方法 |
您所在的位置:网站首页 › linux openfiles 不生效 › too many open files 问题解决方法 |
1 问题描述 Linux操作系统上经常会遇到too many open files文件句柄数不足问题 场景: 有时PG或MySQL数据库会因为操作系统open files打开文件数耗尽而导致数据库异常、主从切换; 苍穹星瀚升级也会碰到too many open files类似问题。 部分中间件偶发情况下也有相关问题。 PG数据库异常示例 苍穹星瀚升级报错示例 2 解决方法(1)系统服务启动默认读取 /etc/systemd/system.conf ,修改后要重启操作系统生效。 DefaultLimitNOFILE=1000000 DefaultLimitNPROC=1000000 (2)如PG服务可以在服务启动文件里设定最大文件数,如果没有设定会读取 /etc/systemd/system.conf值。 以PG为例,对服务配置文件/usr/lib/systemd/system/postgresql.service进行了设置则会读取自身配置值 [Service] LimitNOFILE=1000000 LimitNPROC=1000000 运行如下命令生效 systemctl daemon-reload systemctl restart postgresql 检查是否生效 cat /proc/服务进程号/limits Max processes 1000000 1000000 processes Max open files 1000000 1000000 files (3)动态修改系统内核参数 /etc/sysctl.conf fs.file-max = 1000000 执行命令生效 sysctl -p 3 注意事项在不能重启服务器的情况下,可优先修改service服务配置文件。 由于苍穹相关服务(数据库、中间件、K8S容器)均是由service服务进行启停,所以以修改system.conf和服务配置文件为主。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |